package com.nowcoder.community.dao;

import com.nowcoder.community.entity.DiscussPost;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface DiscussPostMapper {
    /**
     * @param userId 首页帖子实际不用传入userId,但考虑到之后需要实现我的帖子功能,这里就整合到一起
     * @param offset 起始行的行号
     * @param limit 每页最多显示的数据条数
     * @return 查询的帖子
     */
    List<DiscussPost> selectDiscussPosts(int userId,int offset,int limit);

    /**
     * @Param 注解用于给参数取别名,也可以在属性名太长的时候取别名来简化
     * @param userId 动态拼接条件，方法有且只有一个条件时，需要用@Param注解给参数取别名
     * @return 帖子数量
     */
    int selectDiscussPostRows(@Param("userId") int userId);

    //插入帖子
    int insertDiscussPost(DiscussPost discussPost);

    //查询帖子详情
    DiscussPost selectDiscussPostById(int id);

    //更新帖子评论数量
    int updateCommentCount(int id,int commentCount);
}
